package com.cheng.sell.service;

import com.cheng.sell.VO.CartVO;
import com.cheng.sell.entity.ProductInfo;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

/**
 * <p>
 * Description:
 * </p>
 *
 * @author chengxintao
 * @version 1.0
 * <p>
 * <p>
 * History:
 * <p>
 * Date                 Author         Version     Description
 * ---------------------------------------------------------------------------------
 * 2018/8/21         chengxintao          1.0         To create
 * </p>
 * @see
 * @since
 */
public interface ProductInfoService {

    /**
     * 通过id查询商品
     *
     * @param productId
     * @return
     */
    ProductInfo findOne(String productId);

    /**
     * 查询所有商品
     *
     * @return
     */
    List<ProductInfo> findUpAll();

    /**
     * 查询商品分页
     *
     * @param pageable
     * @return
     */
    Page<ProductInfo> findAll(Pageable pageable);

    /**
     * 保存商品
     */
    ProductInfo save(ProductInfo productInfo);

    /**添加库存*/
    void addStock(List<CartVO> cartVOList);

    /**减少库存*/
    void decreaseStock(List<CartVO> cartVOList);
}
